﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Biuro.Klasy;

namespace Biuro.Formy
{
    public partial class AddEditKraj : Form
    {
        List<kraj> kontynenty;
        public string Nazwa
        {
            get { return tbNazwa.Text; }
            set { tbNazwa.Text = value; }
        }
        public string Waluta
        {
            get { return tbWaluta.Text; }
            set { tbWaluta.Text = value; }
        }
        public string Opis
        {
            get { return tbOpis.Text; }
            set { tbOpis.Text = value; }
        }
        public string Kontynent
        {
            get 
            {
                if (Int32.Parse(cbKontynent.SelectedValue.ToString()) == 1)
                    return "afryka";
                if (Int32.Parse(cbKontynent.SelectedValue.ToString()) == 2)
                    return "ameryka południowa";
                if (Int32.Parse(cbKontynent.SelectedValue.ToString()) == 3)
                    return "ameryka północna";
                if (Int32.Parse(cbKontynent.SelectedValue.ToString()) == 4)
                    return "azja";
                return "europa";
            }
            set 
            {
                if (value == "afryka")
                    cbKontynent.SelectedIndex = 0;
                if (value == "ameryka południowa")
                    cbKontynent.SelectedIndex = 1;
                if (value == "ameryka północna")
                    cbKontynent.SelectedIndex = 2;
                if (value == "azja")
                    cbKontynent.SelectedIndex = 3;
                if (value == "europa")
                    cbKontynent.SelectedIndex = 4;
            }
        }
        public AddEditKraj()
        {
            InitializeComponent();
        }

        private void btDodaj_Click(object sender, EventArgs e)
        {
            bool bledy = false;
            if (!System.Text.RegularExpressions.Regex.IsMatch(tbNazwa.Text.ToLower(), @"\b\p{L}{2,25}\b"))
            {
                tbNazwa.BackColor = Color.Red;
                bledy = true;
            }
            else
            {
                tbNazwa.BackColor = Color.White;
            }

            if (!System.Text.RegularExpressions.Regex.IsMatch(tbWaluta.Text.ToLower(), @"\b\p{L}{2,25}\b"))
            {
                tbNazwa.BackColor = Color.Red;
                bledy = true;
            }
            else
            {
                tbNazwa.BackColor = Color.White;
            }

            if(bledy == false)
                this.DialogResult = DialogResult.OK;
        }

        private void AddEditKraj_Load(object sender, EventArgs e)
        {
            Reset();
            kontynenty = new List<kraj>();
            kontynenty.Add(new kraj("afryka",1));
            kontynenty.Add(new kraj("ameryka południowa",2));
            kontynenty.Add(new kraj("ameryka północna", 3));
            kontynenty.Add(new kraj("azja", 4));
            kontynenty.Add(new kraj("europa", 5));

            cbKontynent.DataSource = kontynenty;
            cbKontynent.DisplayMember = "Nazwa";
            cbKontynent.ValueMember = "Liczba";
        }
        public void Reset()
        {
            foreach (TextBox t in this.Controls.OfType<TextBox>().ToArray())
                t.Text = "";
        }

        private void AddEditKraj_Paint(object sender, PaintEventArgs e)
        {
            System.Drawing.Drawing2D.LinearGradientBrush basebackground;
            basebackground = new System.Drawing.Drawing2D.LinearGradientBrush(new Point(0, 0), new Point(0, ClientSize.Height), Color.White, Color.LightGray);
            e.Graphics.FillRectangle(basebackground, ClientRectangle);
        }
    }
}
